Computer technologies continue to advance at a rapid pace. Indeed, computers are used in almost all aspects of business, industry and academic endeavors. Improvements in computer technologies have been a force for bringing about great increases in business and industrial productivity. More and more homes are using computers as well.
There are many different kinds of computers in use today. The term “computer system” will be used herein to refer generally to any device or combination of devices that is capable of processing information to produce a desired result. Some examples of computer systems include personal computers, hand-held computers, personal digital assistants (PDAs), servers, mainframes, supercomputers, minicomputers, workstations, microcomputers, microcontrollers, and the like.
Historically, software was distributed almost exclusively to consumers through portable media, such as compact disks (CD-ROMs). However, with the increased availability and transmission speeds of the Internet, wide-area networks (WANs) and local area networks, an increasing number of consumers obtain their software and software updates via the Internet, and other networks. Distributing software through the Internet or a network is more convenient to consumers and enables consumers to obtain software more rapidly than through traditional distribution techniques.
Unfortunately, software is becoming more complex and consequently significantly larger, increasing the time and bandwidth needed to download these programs. In addition, more and more software updates are needed to fight the constant barrage of computer viruses and to filter the most recent batch of spam (unsolicited e-mail), further diminishing available bandwidth for other applications. Moreover, the distribution of software through many Internet, or network connections may still be hampered by slow transmission speeds and unreliable connections. Even when the connection speeds are fast over a particular connection, available bandwidth for other important business applications is greatly reduced by computer users downloading the same software to their systems within the same local area network (LAN).
In view of the foregoing, benefits may be realized by improved systems and methods for efficiently and rapidly distributing software to computer users. Some exemplary systems and methods for distributing software are described herein.